{% block sw_admin %}
<sw-skip-link />

<!-- eslint-disable-next-line vuejs-accessibility/no-static-element-interactions -->
<div
    id="app"
    @mousemove="onUserActivity"
    @keyup="onUserActivity"
>
    <!-- @experimental stableVersion:v6.8.0 feature:ADMIN_COMPOSITION_API_EXTENSION_SYSTEM -->
    <div
        id="overrideComponents"
        style="display: none;"
    >
        <component
            :is="overrideComponent"
            v-for="(overrideComponent, index) in overrideComponents"
            v-once
            :key="index"
        />
    </div>

    <template v-if="isLoggedIn">
        <sw-duplicated-media-v2 />
        <sw-settings-cache-modal />
        <sw-in-app-purchase-checkout />
        <sw-app-wrong-app-url-modal />
        <sw-media-modal-renderer />
        <sw-upload-status />
    </template>

    <sw-notifications ref="notifications" />
    <router-view />
    <sw-license-violation />
    <sw-hidden-iframes />
    <sw-modals-renderer />
    <mt-snackbar :snackbars="snackbar.snackbars" />
    <mt-toast
        :toasts="toasts"
        @remove-toast="onRemoveToast"
    />
</div>
{% endblock %}
